/*
                  Interface Class Definition

                  Base class for the game interfaces.
*/

#ifndef INTERFACE_H
#define INTERFACE_H

#include "SDL/SDL.h"
#include "GUISystem/FrameGroup.h"

enum InterfaceType { NONE = -1, EXIT, MENU, LOCALGAMELOBBY, INGAME, GAMESUMMARY, OPTIONS, NETWORKMENU, CREDITS };

class Interface
{
    public:
        Interface() {}
        virtual ~Interface() {}

        virtual int Initialise() = 0;
        virtual InterfaceType HandleInput(const SDL_Event& event) { return NONE; }
        virtual int Draw(SDL_Surface *surface) = 0;

    protected:

};

#endif
